package com.qm.chp03operator;

/**
 * @author wb
 * @date 2023-06-10 10:41
 * @description: 位运算符
 */
public class Myoperator03 {
    public static void main(String[] args) {
//      &&短路与作用和&相同，但是有短路效果
//      ||短路或作用和 |相同，但是有短路效果
//      逻辑与&，无论左边真假，右边都要执行。
//      短路与&&，如果左边为真，右边执行；如果左边为假，右边不执行。
//      逻辑或|，无论左边真假，右边都要执行。
//      短路或||，如果左边为假，右边执行；如果左边为真，右边不执
        int x = 3;
        int y = 4;
        System.out.println((x++ > 4) & (y++ > 5)); // 两个表达都会运算
        System.out.println(x); // 4
        System.out.println(y); // 5

        System.out.println((x++ > 4) && (y++ > 5)); // 左边已经可以确定结果为false，右边不参与运算
        System.out.println(x); // 4
        System.out.println(y); // 4
    }
}
